package homework.Arrays;

import java.util.Arrays;
import java.util.Random;

public class RandomArrays {
    public static void main(String[] args) {
        // 1. 创建包含10个随机整数(1-100)的一维数组
        int[] numbers = generateRandomArray(10);
        System.out.println("原始数组: " + Arrays.toString(numbers));

        // 2. 找出数组中的最大值和最小值
        int max = findMax(numbers);
        int min = findMin(numbers);
        System.out.println("最大值: " + max);
        System.out.println("最小值: " + min);

        // 3. 计算数组所有元素的平均值
        double average = calculateAverage(numbers);
        System.out.printf("平均值: %.2f\n", average);

        // 4. 对数组进行升序排序并输出
        sortArray(numbers);
        System.out.println("排序后的数组: " + Arrays.toString(numbers));
    }

    // 生成随机数组方法
    public static int[] generateRandomArray(int size) {
        int[] array = new int[size];
        Random random = new Random();
        for (int i = 0; i < size; i++) {
            array[i] = random.nextInt(100) + 1; // 生成1-100的随机数
        }
        return array;
    }

    // 查找最大值方法
    public static int findMax(int[] array) {
        int max = array[0];
        for (int num : array) {
            if (num > max) {
                max = num;
            }
        }
        return max;
    }

    // 查找最小值方法
    public static int findMin(int[] array) {
        int min = array[0];
        for (int num : array) {
            if (num < min) {
                min = num;
            }
        }
        return min;
    }

    // 计算平均值方法
    public static double calculateAverage(int[] array) {
        int sum = 0;
        for (int num : array) {
            sum += num;
        }
        return (double) sum / array.length;
    }

    // 数组排序方法(升序)
    public static void sortArray(int[] array) {
        Arrays.sort(array);
    }
}
